| Filename | (eval 1115)[/usr/share/perl5/CGI.pm:932] |
| Statements | Executed 6 statements in 40µs |
| Eval Invoked At | /usr/share/perl5/CGI.pm line 932 |
| Sibling evals | 1, 2, 3, 4 |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0s | 0s | CGI::unescapeHTML |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package CGI; sub unescapeHTML { | ||||
| 2 | # hack to work around earlier hacks | ||||
| 3 | 1 | 1µs | push @_,$_[0] if @_==1 && $_[0] eq 'CGI'; | ||
| 4 | 1 | 14µs | 1 | 6µs | my ($self,$string) = CGI::self_or_default(@_); # spent 6µs making 1 call to CGI::self_or_default |
| 5 | 1 | 300ns | return undef unless defined($string); | ||
| 6 | 1 | 15µs | 1 | 2µs | my $latin = defined $self->{'.charset'} ? $self->{'.charset'} =~ /^(ISO-8859-1|WINDOWS-1252)$/i # spent 2µs making 1 call to CGI::CORE:match |
| 7 | : 1; | ||||
| 8 | # thanks to Randal Schwartz for the correct solution to this one | ||||
| 9 | 1 | 8µs | 1 | 2µs | $string=~ s[&([^\s&]*?);]{ # spent 2µs making 1 call to CGI::CORE:subst |
| 10 | local $_ = $1; | ||||
| 11 | /^amp$/i ? "&" : | ||||
| 12 | /^quot$/i ? '"' : | ||||
| 13 | /^gt$/i ? ">" : | ||||
| 14 | /^lt$/i ? "<" : | ||||
| 15 | /^#(\d+)$/ && $latin ? chr($1) : | ||||
| 16 | /^#x([0-9a-f]+)$/i && $latin ? chr(hex($1)) : | ||||
| 17 | "&$_;" | ||||
| 18 | }gex; | ||||
| 19 | 1 | 2µs | return $string; | ||
| 20 | } | ||||
| 21 | |||||
| 22 | ; |